﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Reflection;
using System.Linq.Expressions;

namespace AirLinq.Meta {
	public abstract class MetaMember {
		private readonly MemberInfo _member;
		private readonly string _columnName;
		private readonly LambdaExpression _expression;
		private readonly bool _primaryKey;

		public MetaMember(MemberInfo member, string columnName, LambdaExpression expression, bool primaryKey) {
			_member = member;
			_columnName = columnName;
			_primaryKey = primaryKey;
		}
		public MemberInfo Member {
			get {
				return _member;
			}
		}
		public string ColumnName {
			get {
				return _columnName;
			}
		}
		public LambdaExpression Expression {
			get {
				return _expression;
			}
		}
		public bool PrimaryKey {
			get {
				return _primaryKey;
			}
		}
	}
}
